package com.yy.base.common.service;

import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;

@Service
@SuppressWarnings("unchecked")
public class EntityService extends BaseService {
	/**
	 * 通过sql语句查询结果
	 * 返回List<Map>，key为大写
	 */
	public List<Map<String, Object>> query(String sql, Object... objs) {
		return dao.query(sql, objs);
	}
	/**
	 * 通过sql语句查询结果
	 * 返回List<Map>，key为大写
	 */
	public List<Map<String, Object>> query(String sql, Map params) {
		return dao.query(sql, params);
	}
	/**
	 * 通过sql语句查询结果
	 * 返回Map，key为大写
	 */
	public Map<String, Object> queryUnique(String sql, Object... objs) {
		return dao.queryUnique(sql, objs);
	}
	/**
	 * 通过sql语句查询唯一结果
	 */
	public Object queryUniqueValue(String sql, Object... objs) {
		Map<String, Object> map = dao.queryUnique(sql, objs);
		if (map != null) {
			for (String key : map.keySet()) {
				return map.get(key);
			}
		}
		return null;
	}
	/**
	 * 分页sql查询
	 * 返回Map，key为大写
	 */
	public List<Map<String, Object>> splitQuery(String sql, Object... objs) {
		return dao.splitQuery(sql, objs);
	}
	/**
	 * 获得sql的统计结果
	 */
	public Long getSqlCount(String sql, Object... objs) {
		return dao.getSqlCount(sql, objs);
	}
	/**
	 * 得到表字段属性
	 */
	public List<Map> getFields(String table) {
		return dao.getFields(table);
	}
}